package com.dnjn.happiness.survey.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.dnjn.happiness.common.core.annotation.Excel;
import com.dnjn.happiness.common.core.web.domain.BaseEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * 题库题目对象 svy_tiku
 *
 * @author happiness
 * @date 2023-10-23
 */
@Schema(name = "Tiku", description = "题库题目")
@Accessors(chain = true)
@Getter
@Setter
@TableName("svy_tiku")
@ToString
public class Tiku extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * PK
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId(value = "tiku_id", type = IdType.ASSIGN_ID)
    private Long tikuId;


    


    /**
     * 是否多选 Y-N
     */
    @Schema(description = "是否多选 Y-N")
    @Excel(name = "是否多选 Y-N")
    private String isMultipleChoice;

    /**
     * select 选择 | pack填空
     */
    @Schema(description = "选择还是填空 select|pack ")
    private String isSelectPack;

    /**
     * 题库标题
     */
    @Schema(description = "题库标题")
    @Excel(name = "题库标题")
    private String title;

    /**
     * $column.columnComment
     */
    @Schema(description = "选项A")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String optionA;

    @Schema(description = "选项A分值")
    private Integer scoreOptionA;

    /**
     * $column.columnComment
     */
    @Schema(description = "B")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String optionB;

    @Schema(description = "选项B分值")
    private Integer scoreOptionB;

    /**
     * $column.columnComment
     */
    @Schema(description = "${comment}")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String optionC;

    @Schema(description = "选项C分值")
    private Integer scoreOptionC;

    /**
     * $column.columnComment
     */
    @Schema(description = "${comment}")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String optionD;

    @Schema(description = "选项D分值")
    private Integer scoreOptionD;

    /**
     * $column.columnComment
     */
    @Schema(description = "${comment}")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String optionE;

    @Schema(description = "选项E分值")
    private Integer scoreOptionE;

    /**
     * $column.columnComment
     */
    @Schema(description = "${comment}")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String optionF;

    @Schema(description = "选项F分值")
    private Integer scoreOptionF;

    /**
     * $column.columnComment
     */
    @Schema(description = "${comment}")
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String optionG;

    @Schema(description = "选项G分值")
    private Integer scoreOptionG;

    /**
     * 答案
     */
    @Schema(description = "答案")
    @Excel(name = "答案")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String answer;

    /**
     * 题库类型
     */
    @Schema(description = "题库类型")
    @Excel(name = "题库类型")
    private Long tikuTagsId;

    /**
     * 题库类型名称
     */
    @Schema(description = "题库类型名称")
    @TableField(exist = false)
    private String tikuTagsLabel;

    /**
     * 是否删除|0-否 1-是|valid
     */
    @Schema(description = "是否删除|0-否 1-是|valid")
    @Excel(name = "是否删除|0-否 1-是|valid")
    private String deleted;

    /**
     *
     */
    @Schema(description = "owl;koala;peacock;chameleon;tiger")
    private String answerType;

    /**
     *
     */
    @Schema(description = "number;word")
    private String answerScoreType;

    /**
     *
     */
    @Schema(description = "选项a字母分值")
    private String wordScoreOptionA;

    /**
     *
     */
    @Schema(description = "选项b字母分值")
    private String wordScoreOptionB;

    /**
     *
     */
    @Schema(description = "选项c字母分值")
    private String wordScoreOptionC;

    /**
     *
     */
    @Schema(description = "选项d字母分值")
    private String wordScoreOptionD;

    /**
     *
     */
    @Schema(description = "选项e字母分值")
    private String wordScoreOptionE;

    /**
     *
     */
    @Schema(description = "选项f字母分值")
    private String wordScoreOptionF;

    /**
     *
     */
    @Schema(description = "选项g字母分值")
    private String wordScoreOptionG;


}
